1. Field of the Invention
One or more embodiments of the present invention relate to virtual machines and, more specifically, to methods for using network storage functionality to implement virtual machine operations that manipulate encodings of virtual machine state data.
2. Description of the Related Art
Modern storage arrays (including those based on monolithic storage area network (SAN) technology, modular SANs, network attached storage (NAS), etc.) can provide flexible and highly effective ways to manage underlying storage. Often in such storage architectures, underlying physical storage (e.g., disks or other physical stores) is abstracted into storage pools that can be carved up into individual storage volumes. Storage volumes are often referred to as LUNs, after the Logical Unit Number historically used to identify them. In some cases, storage arrays provide enterprise level data management features, such as point-in-time snapshotting, resizing, copying, and replication of storage volumes to remote sites, as well as fine grain control over data reliability and performance characteristics.
In a typical SAN environment with physical machines, storage volumes can be used to replace or augment local disk drives in those machines. This approach can facilitate centralized management and increased data-availability, as well as support for on-line backup and WAN replication for disaster recovery. Although the capabilities provided by modern SAN technology are significant, practical exploitation of these or similar capabilities can be complicated when data includes encodings of virtual machine state. Methods are desired to allow virtualization system to leverage advanced storage array operations.